System and method of accessing and transmitting different data frames in a digital transmission network

ABSTRACT

A method for processing data through a system for accessing and transmitting different data frames in a digital transmission network includes the following steps: the virtual interface device classifying the data frames, and the virtual interface device outputting the data frames to corresponding device interfaces. The system includes a user-network interface (UNI), which is used to connect to a user&#39;s network, a network-network interface (NNI), which is used to connect to said digital transmission network to transfer data, a mapping/demapping device, a virtual interface device, which couples with the UNI and couples with the NNI via the mapping/demapping device, and a control device, which couples with the virtual interface device to control it to access and transmit the data frames.

[0001] This application claims the priority of Chinese Patent Application No. 03103096.3, filed Jan. 28, 2003, the disclosure of which is expressly incorporated by reference herein.

FIELD OF THE INVENTION

[0002] The present invention relates to a system and method of accessing and transmitting data frames, in particular to a system and method of accessing and transmitting different data frames in a digital transmission network.

BACKGROUND OF THE INVENTION

[0003] Because Ethernet technology is featured with low price and high expansibility, etc., it has evolved from a mainstream LAN technology to a primary data service access technology and is widely used in Metropolitan Area Network (MAN) by more and more telecom operators. Providing Ethernet data services has become a trend for telecom operators. Ethernet data services can be classified into two types: Ethernet private line services and Virtual Local Area Network (VLAN) services.

[0004] For convenience, the phrases and abbreviations in the following description have the following meanings: MPLS—Multi-protocol Label Switching; GFP—General Frame Positioning; VLAN—virtual Local Area Network; VMAN—virtual Metropolitan Area Network; RPR—Resilient Packet Ring.

[0005] Currently, most of the telecom operators' data transmission networks are SDH/SONET networks. Therefore, it is a highlight for telecom operators and telecom equipment manufacturers to access and transfer Ethernet data frames effectively in a SDH/SONET network to meet the increasing demand for Ethernet data services. At present, several telecom equipment manufacturers have provided the devices to access and transfer Ethernet data frames in a SDH/SONET network, and those devices may be classified into 3 types according to the implementation approach of functionality:

[0006] (1) Data mapping/demapping scheme;

[0007] (2) Bridge scheme;

[0008] (3) RPR scheme.

[0009]FIG. 1 shows a block diagram of a first prior art device according to the data mapping/demapping scheme. The device comprises one or more user-network interfaces (UNI) 20 (standard Ethernet interfaces), one or more network-network interface (NNI) 30 (synchronous digital transmission channels), one or more mapping/demapping devices 101, 102, . . . , each of which corresponds to a unique UNI and a unique NNI. The data frames entering the device via UNI 20 and data frames output from the device comply with Ethernet data standard, and data frames entering the device via NNI 30 and data frame output from the device comply with synchronous digital transmission network standard.

[0010] The mapping/demapping device 10 maps Ethernet data frames entering the device via UNI 20 to become synchronous digital data frames, and outputs the mapped data frames via NNI 30. The mapping/demapping device 10 demaps the synchronous digital data entering the device via NNI to Ethernet data frames, and outputs the data frames via the UNI. However, the functionality of the device is simple, thus it can only provide Ethernet private line services.

[0011]FIG. 2A shows a block diagram of another prior art device utilizing a bridge scheme. The device comprises one or more UNIs 20 (standard Ethernet interfaces), each of which corresponds to a unique bridge port. The device further comprises one or more NNIs 30 (synchronous digital transmission channels). The device further comprises a bridge device 400 (described in detail in IEEE802.1D and IEEE802.1Q), wherein the bridge device 400 comprises a plurality of bridge ports, each of which corresponds to a unique UNI or a unique mapping/demapping device. Each mapping/demapping device corresponds to a unique bridge port and a unique NNI. The data frames entering the device via UNI 20 and the data frames output from the device comply with the Ethernet data standard, and data frames entering the device from NNI 30 and data frame output from the device comply with the standard of synchronous digital transmission network.

[0012] Data frames entering the device via UNI 20 enter the bridge device 400 via the bridge port corresponding to the UNI, the bridge device 400 calculates the bridge output port according to the address information in the data frames and sends the data frames to the corresponding mapping/demapping device 102, which maps the data frames and then outputs them to the NNI, via the output port, and vice versa.

[0013] In the bridge scheme, usually the operator is allowed to map some or all UNIs to mapping/demapping devices in a one-to-one way through configuration. In this case, the device employs both of above technical schemes, so it is called an enhanced bridge scheme. The functional model of an enhanced bridge device is shown in FIG. 2B.

[0014] Disadvantages of the second prior art device are:

[0015] (1) It is unable to provide integral VLAN service. If a plurality of users are attached to the device via UNI's and there are conflicts among address spaces of Ethernet data frames of those users, the device is unable to isolate the conflicts effectively. Thus it is unable to provide services correctly to those users.

[0016] (2) A common bridge (non-enhanced bridge) is unable to provide Ethernet private line service.

[0017] (3) A UNI can only support one service type (Ethernet private line service or VLAN service), which limits the access capability of the device. In some cases, though the processing capacity of the device is still sufficient, new devices have to be added to improve access capacity because the UNIs have been used up.

[0018] (4) A NNI can only support one service type (Ethernet private line service or VLAN service), which leads to low convergence capability of the device. In some cases, in a star, topology network, though the processing capacity of the device is still sufficient, new devices have to be added to improve convergence capacity because the NNIs have been used up. For operators, it means not only new investment but also bandwidth waste.

[0019]FIG. 3 shows a block diagram of a third prior art device utilizing RPR scheme. The device comprises one or more UNIs (standard Ethernet UNIs), two NNIs (synchronous digital transmission channels), and a RPR device 600 (described in IEEE802.17), two mapping/demapping devices, and a data processing device 500 which may be a data converging/deconverging device or a bridge device.

[0020] The data frames entering the device via the UNI 20 are processed as follows:

[0021] Step 1: the data processing device 500 processes the data frames (the data frames are converged if the data processing device is a data converging/deconverging device; the data frames are switched if the data processing device is a bridge device);

[0022] Step 2: the data processing device 500 transfers the processed data frames to the RPR device 600;

[0023] Step 3: the RPR device 600 sends the data frames to the corresponding mapping/demapping device according to the address information in the data frames; and

[0024] Step 4: the mapping/demapping device performs a mapping operation for the data frames and sends them to the outside of the device via the corresponding NNI.

[0025] The data frames entering the device via the NNI are processed as follows:

[0026] Step 1: the mapping/demapping device performs a demapping operation for the data frames and transfers the demapped data frames to the RPR device 600;

[0027] Step 2: the RPR device 600 processes the data frames and then sends them to the data processing device;

[0028] Step 3: the data processing device 500 processes the data frames (the data frames are deconverged if the data processing device is a data converging/deconverging device; the data frames are switched if the data processing device is a bridge device); and

[0029] Step 4: the data processing device 500 finds the corresponding UNI according to the address information in the data frames and then outputs the data frames via the UNI.

[0030] Disadvantages of this scheme are:

[0031] (1) It is unable to provide Ethernet private line service and VLAN service at the same time. If the data processing device is a bridge device, it doesn't support Ethernet private line service. If the data processing device is a data converging/deconverging device, it doesn't support VLAN service.

[0032] (2) It can only be used in a ring topology network.

SUMMARY OF THE INVENTION

[0033] An object of the present invention is to provide a data processing and dispatching device in an SDH/SONET network and the method of accessing and transmitting Ethernet data frames thereof, in order to provide individualized service and improve the service capability of the device.

[0034] According to one aspect of the present invention, it is provided a method of processing data through a system for accessing and transmitting different data frames in a digital transmission network. This system includes at least a UNI, which is used to couple with the user's network; at least an NNI, which is used to couple with said digital transmission network to transfer data; at least one mapping/demapping device; a virtual interface device, which couples with at least one UNI and couples with at least one NNI via the mapping/demapping device; a control device, which couples with the virtual interface device to control it to access and transmit the data frames. The method comprises the steps of the virtual interface device classifying the data frames, and the virtual interface device outputting the data frames to the corresponding device interfaces.

[0035] Preferably, the control device includes a data processing and dispatching device, which couples with the virtual interface device; at least one virtual private device and/or at least one virtual bridge device and/or at least one RPR device, which couples with the data processing and dispatching device. The method also comprises the step of the virtual bridge device switching the data frames.

[0036] Optionally, the control device comprises: a data processing and dispatching device, which couples with the virtual interface device; at least one virtual private device and/or at least one virtual bridge device and/or at least one RPR device, which couples with the data processing and dispatching device. The method also comprises the step of the virtual private device processing the data frames.

[0037] Preferably, the step of the virtual private device processing the data frames comprises the following step: relaying and/or converging and/or deconverging the data frames.

[0038] Optionally, the step of the virtual private device processing the data frames also comprises the following step: the RPR device processing the data frames.

[0039] Preferably, the step of the RPR device processing the data frames comprises the following step: terminating sending and/or relaying and/or beginning to send the data frames.

[0040] Optionally, the step of the RPR device processing the data frames also comprises the following step: the RPR device processing the data frames.

[0041] Preferably, the step of the RPR device processing the data frames comprises the following step: terminating sending and/or relaying and/or beginning to send the data frames.

[0042] The system and method according to the present invention have the following advantages:

[0043] (1) With the system and method of the present invention, operators can adjust the processing flow in the device flexibly according to the network topology, users' requirements, and bandwidth resource, etc., to improve the processing ability and efficiency of bandwidth.

[0044] (2) With the system and method of the present invention, fast and individualized service can be provided for users. Operators can provide new services for users through establishing new processing flow combination when the system is not upgraded and new devices are added.

[0045] Other objects, advantages and novel features of the present invention will become apparent from the following detailed description of the invention when considered in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0046]FIG. 1 shows a block diagram of a data mapping/demapping scheme according to a first prior art device;

[0047]FIG. 2A shows a block diagram of a bridge scheme according to a second prior art device;

[0048]FIG. 2B shows a block diagram of an enhanced bridge scheme according to the second prior art device;

[0049]FIG. 3 shows a block diagram of a RPR scheme according to a third prior art device;

[0050]FIG. 4 shows a schematic diagram of a preferred embodiment of a system accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention;

[0051]FIG. 4 (F) shows a data processing flowchart of a preferred embodiment of the system accessing and transmitting Ethernet data frames in an SDH/SONET network;

[0052]FIG. 4A shows a schematic block diagram of a virtual interface device in a preferred embodiment of the system accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention;

[0053]FIG. 4A (F1) shows a flowchart of a virtual interface device processing the data entering from the interface of a processing device in a preferred embodiment of the system for accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention;

[0054]FIG. 4A (F2) shows a flowchart of a virtual interface device processing the data entering from the inter-device interface in a preferred embodiment of the system for accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention;

[0055]FIG. 5 shows a schematic block diagram of a virtual private device in a preferred embodiment of the system accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention;

[0056]FIG. 5 (F) shows a flowchart of a virtual private device processing the data entering from the inter-device interface in a preferred embodiment of the system for accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention;

[0057]FIG. 6 shows a schematic block diagram of a virtual bridge device in a preferred embodiment of the system for accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention;

[0058]FIG. 6 (F1) shows a flowchart of a virtual bridge device processing the data entering from the inter-device interface in a preferred embodiment of the system accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention;

[0059]FIG. 6 (F2) shows a flowchart of a broadcasting sub-flow of the virtual bridge device processing the data entering from the inter-device interface in a preferred embodiment of the system for accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention;

[0060]FIG. 6 (F3) shows a flowchart of a multicasting sub-flow of the virtual bridge device processing the data entering from the inter-device interface in a preferred embodiment of the system for accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention;

[0061]FIG. 7 shows a schematic block diagram of a data processing and dispatching device in a preferred embodiment of the system for accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention;

[0062]FIG. 7 (F) shows a flowchart of a data processing and dispatching device processing the entered data in a preferred embodiment of the system accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention;

DETAILED DESCRIPTION OF EMBODIMENTS

[0063] To make the system and method of the present invention better understood, the basic function of a device is described first. Usually, all devices have the following three functions:

[0064] (1) Input function, i.e., receive external information;

[0065] (2) Processing function, i.e., process the external information;

[0066] (3) Output function, i.e., output the processed information.

[0067] A device for accessing and transmitting Ethernet data frames in a SDH/SONET network includes:

[0068] (1) Input function: receive external information via the UNIs and the NNIs;

[0069] (2) Processing function: for a device for accessing and transmitting Ethernet data frames in an SDH/SONET network, different processing ability as well as service ability and service efficiency depend on different technical schemes; and

[0070] (3) Output function: output the processed information via the UNI and the NNI.

[0071] In addition, the phrase “standard Ethernet interface” used in the present application means the following:

[0072] IEEE802.3 defines the LAN interface in detail; Such an interface is regarded as a standard Ethernet interface in the present invention.

[0073] The present invention will be described hereunder with reference to the drawings. For concision, components and units described in prior art will not be described in detail hereunder. And components and units described above will not be described in detail hereunder.

[0074]FIG. 4 shows a system that accesses and transmits different data frames in a digital transmission network. The system comprises a plurality of UNIs designed to couple with the users' networks, a plurality of NNIs designed to couple with said digital transmission network to transmit data, a plurality of mapping/demapping devices 10, a virtual interface device 80 coupled with said UNIs and also coupled with said NNIs via said mapping/demapping devices 10, a data processing and dispatching device 90 coupled with said virtual interface device 80, a plurality of virtual private devices 120 and a virtual bridge device 100 and a RPR device 110 coupled with said data processing and dispatching device. Although a plurality of virtual private devices 120, a virtual bridge device 100 and a RPR device 110 are described in the present application, it should be noted that a combination of any one or two of them can implement the present invention. The input to said system comprises: (1) data frames entering the system via the UNIs and (2) data frames entering the system via the NNIs. The data frames output from said system comprises: (1) data frames from the UNIs and (2) data frames from the NNIs.

[0075]FIG. 4 (F) shows the processing steps for data frames entering the system via the UNIs.

[0076] First, in step 1, the virtual interface device performs a matching action to the data frames according to classifying rules;

[0077] In step 2, the virtual interface device modifies the data frames according to classifying rules, i.e., inserts a data type number in the data frames;

[0078] In step 3, the virtual interface device transfers the modified data frames to the data processing and dispatching device;

[0079] In step 4, the data processing and dispatching device finds a corresponding processing device according to the data type number in the data frames;

[0080] In step 5, the data processing and dispatching device transfers the data frames to the corresponding processing device. If the corresponding processing device is a virtual interface device, go to step 8;

[0081] In step 6, said corresponding processing device processes the data frames, modifies the data type number at the end of the processing, and then transfers the modified data frames to the data processing and dispatching device;

[0082] In step 7, go to step 4;

[0083] In step 8, the virtual interface device finds the corresponding device interface according to the data type number in the data frames;

[0084] In step 9, the virtual interface device modifies the data frames, i.e., it deletes the data type number from the data frames;

[0085] In step 10, the virtual interface device outputs the modified data frames via the device interface (if the device interface is an NNI, a mapping operation should be performed through the mapping/demapping device before output).

[0086] The processing steps for data frames entering the device via the NNI are as follows:

[0087] In step 1, the mapping/demapping device performs a demapping operation to the data frames;

[0088] In step 2, the remaining processing steps are identical to those for data frames entering the system via the UNIs.

[0089] The main components of the system for accessing and transmitting different data frames in a digital transmission network is now described with reference to the drawings.

[0090]FIG. 4A shows a schematic block diagram of a virtual interface device in a preferred embodiment of the system accessing and transmitting Ethernet data frames in a SDH/SONET network according to the present invention. A virtual interface device 80 is used to enhance access ability. Via the virtual interface device 80, a device interface (UNI 20 or NNI 30) may be expanded to a plurality of virtual interfaces, each of which supports specific users and services. For data frames entering the system via the device interfaces (UNI 20 and NNI 30), the virtual interface processing unit 800 of the virtual interface device will classify them according to different services required by the users and choose corresponding processing for them. Different processing corresponds to different rules in the rule database 850. The control interface unit controls the virtual interface processing unit 800 to classify the data frames according to the orders from the control interface and searches for corresponding rules stored in the rule database 850 to process the data. Data frames output from the device are transferred to a corresponding device interface after classified in the virtual interface device. Because the virtual interface device stores N rules, the mapping relationship between the device interface and those rules is 1:N. The rules in the virtual interface device may be set up or deleted dynamically. Therefore, it is easy to modify the rules to enhance the adaptability of the system according to the users' requirements and the updating of the system. The device also comprises a software loader (not shown) to load different software.

[0091] As the processing center, the virtual interface processing unit 800 is responsible for processing data frames. The processing steps and processing logic in the virtual interface processing unit are firmware and can't be modified during operation of the system. The rule database is the control center and is responsible for providing relevant processing and control parameters when the virtual interface processing unit processes the data frames. Different parameters lead to corresponding processing behaviors. During operation of the system, the rules in the rule database may be updated. The control interface unit provides an external control interface. Via the control interface, the control system of the device may monitor the virtual interface processing unit and performs adding, deleting, editing, and querying operations to the rules in the rule database. The rule database may store a plurality of rules, each of which contains five parts: a device interface number, data frame type number, data frame address offset, data frame type value, and data frame comparison mask.

[0092] Wherein the virtual interface device is connected to the UNIs or the NNIs via the device interfaces. The mapping relationship between the UNIs (or NNIs) and the device interfaces is 1:1. The virtual interface device is connected to the data processing and dispatching device via the inter-device interface. The virtual interface device is connected to the control system of the device via the control interface.

[0093]FIG. 4A (F1) shows the steps of the virtual interface processing unit processing data frames entering the virtual interface device via the device interface:

[0094] Step 1: searching for the first rule in the rule database corresponding to the device interface with the index of the device interface number;

[0095] Step 2: examining the searching result; if it is blank, discarding said data frames and going to step 10;

[0096] Step 3: reading information at an address offset of the data frame according to the data frame address offset in the rule;

[0097] Step 4: performing an “AND” operation between said read information and data frame comparison mask in the rule;

[0098] Step 5: comparing the result of step 4 with the data frame type value in the rule; if they are equal, going to step 8;

[0099] Step 6: searching for the next rule corresponding to said device interface in the rule database;

[0100] Step 7: going to step 2;

[0101] Step 8: modifying the data frame, i.e., inserting data type number information in the rule in the head position of the data frames;

[0102] Step 9: transferring the data frames to the data frame processing and dispatching device via the inter-device interface;

[0103] Step 10: ending the process.

[0104]FIG. 4A (F2) shows the steps of the virtual interface processing unit processing data frames entering the virtual interface device via the inter-device interface. The processing steps are as follows:

[0105] Step 1: extracting the data frame type information from a head position of the data frames;

[0106] Step 2: searching in the rule database with the index of the data frame type number;

[0107] Step 3: determining the searching result; if it is blank, discarding said data frames and going to step 6;

[0108] Step 4: modifying the data frames, i.e., deleting the data frame type number information from a head position of the data frames;

[0109] Step 5: sending the data frames to a corresponding device interface according to the device interface number in the rule;

[0110] Step 6: ending the process.

[0111]FIG. 5 shows a schematic block diagram of a virtual private device in a preferred embodiment of the system accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention. The system accessing and transmitting Ethernet data frames in an SDH/SONET network comprises a plurality of UNIs designed to couple with the users' networks, a plurality of NNIs designed to couple with said digital transmission network to transmit data, a plurality of mapping/demapping devices 10, a virtual interface device 80 coupled with said UNIs and also coupled with said NNIs via said mapping/demapping devices 10, a data processing and dispatching device 90 coupled with said virtual interface device 80, a plurality of virtual private devices 120 and a virtual bridge device 100 and a RPR device 110 coupled with said data processing and dispatching device. Although a plurality of virtual private devices 120, a virtual bridge device 100 and a RPR device 110 are described in the present invention, it should be noted that a combination of any one or two of them can implement the present invention. In the virtual private device, a virtual private processing unit 8001 is coupled with the inter-device interface to process the data from the inter-device interface. The virtual private processing unit 8001 is also coupled to the rule database and the control interface unit. The control interface unit exchanges data with the outside world via the control interface.

[0112] The present invention enhances the converging ability of the system by utilizing the virtual private device. The virtual private device stores converging rules, deconverging rules, and relay rules (the relay rules are optional and unnecessary in some simple virtual private devices). The mapping relationship between the data types and the rules is 1:1. The rules in the virtual private device can be set up and deleted dynamically. Data frames of different users can be isolated, transmitted and shared by adding a label before sending, changing the label during transmission and removing the label at the destination address. A virtual private device comprises a virtual private processing unit and a rule database in it.

[0113] The virtual private processing unit has two major functions:

[0114] (a) Detecting control messages and transferring the control messages to the control system of the device via the control interface unit.

[0115] (b) Performing a convergence, deconvergence, or relay operation for data frames except for the control messages.

[0116] The virtual private processing unit is the processing center of the device; the following items are stored in the virtual private processing unit as firmware:

[0117] (a) Format of control messages;

[0118] (b) Processing steps and logic for data frames;

[0119] (c) Format of rules in the rule database;

[0120] As the control center, the rule database controls the processing action of the virtual private processing unit. The rules in the rule database may be updated dynamically. The rule database may store a plurality of rules, each of which comprises the following information: an input data frame type number, rule type (convergence/deconvergence/relay), label number, and output data frame type number.

[0121] Wherein said virtual private device is connected to the data processing and dispatching device via the inter-device interface; said virtual private device is connected to the control system of the device via the control interface.

[0122] There are different technical schemes for implementing the virtual private device. However, the data frame processing steps and logic in the virtual private processing unit is identical under these schemes. The main differences between these schemes are:

[0123] (a) Format of rules in the rule database, for example, the length and position of label in the rule are different;

[0124] (b) Format of control messages processed in the virtual private processing unit.

[0125] In view of expandability and compatibility, it is recommended to implement the virtual private device with MPLS, GFP, VMAN, or Nested VLAN technique. The device manufacturers may also employ self-defined label formats (or self-defined data frame packets) to implement said virtual private device. The system may support a plurality of virtual private devices implemented with different technical schemes.

[0126]FIG. 5 (F) shows a flowchart of the virtual private device; for data frames entering the device via the inter-device interface, the processing steps of the virtual private processing unit are as follows:

[0127] Step 1: determining whether the data frames are control messages; if yes, going to step 3;

[0128] Step 2: transferring the data frames to an external control system via the control interface unit, and then going to step 12;

[0129] Step 3: extracting the input data type number information from the head position of the data frames;

[0130] Step 4: searching in the rule database with the index of the input data type number information;

[0131] Step 5: determining the searching result; if it is blank, discarding said data frames and going to step 12;

[0132] Step 6: determining the rule type; if it is a convergence rule, going to step 7; if it is a deconvergence rule, going to step 8; if it is a relay rule, going to step 9;

[0133] Step 7: modifying the data frames, i.e., inserting a label number defined in the rule at a special position in the data frames, and then going to step 10;

[0134] Step 8: modifying the data frame, i.e., removing the label number at the special position in the data frames, and then going to step 10;

[0135] Step 9: modifying the data frames, i.e., replacing the label number at the special position in the data frames with a label number defined in the rule;

[0136] Step 10: modifying the data frames, i.e., replacing the data type number at the head position of the data frames with the output data type number defined in the rule;

[0137] Step 11: transferring the data frames to the data frame processing and dispatching device via the inter-device interface;

[0138] Step 12: ending the process.

[0139]FIG. 6 shows a schematic block diagram of a virtual bridge device in a preferred embodiment of the system accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention. The present invention overcomes the issue of limited Ethernet data frame address space through a virtual bridge device. A virtual bridge device may provide a plurality of virtual bridges. Each virtual bridge possesses all features and properties of the bridge device. However, it is different from the bridge device in that the virtual bridge may be set up and deleted dynamically. During the operation of the system, the operator may set up or delete a plurality of virtual bridges dynamically because each virtual bridge has an independent address space, the operator may provide VLAN services to users with different virtual bridges if conflicts exist among address spaces.

[0140] The operator may configure a virtual bridge just like a physical bridge. The virtual bridge further expands the features of physical bridge to support the VMAN-based switching operation. A virtual bridge device comprises a virtual bridge processing unit 802, a multicasting database 856, a control interface unit, a forwarding database 852, and a virtual bridge database 854.

[0141] The virtual bridge processing unit has three major functions:

[0142] (a) Detecting control messages and transferring the control messages to the control system of the device via the control interface unit.

[0143] (b) Learning addresses, and storing the knowledge acquired into the forwarding database;

[0144] (c) Performing switching for data frames except for control messages and modifying data type information in the data frames.

[0145] The virtual bridge processing unit is the processing center of the device, and there are five items embedded in it:

[0146] (a) Format of control messages;

[0147] (b) Processing steps and logic for data frames;

[0148] (c) Format of forwarding items in the forwarding database;

[0149] (d) Format of multicasting items in the multicasting database;

[0150] (e) Format of items in the virtual bridge database

[0151] The virtual bridge database, multicasting database, and forwarding database control the processing behaviors of the virtual bridge processing unit, and the items in them may be updated during operation of the system. The data formats of items in the multicasting database and forwarding database are identical, and each item contains the following information:

[0152] (a) Virtual bridge number;

[0153] (b) Input port of virtual bridge;

[0154] (c) Destination address input;

[0155] (d) VLAN serial number input;

[0156] (e) VMAN serial number input;

[0157] (f) Output port of virtual bridge;

[0158] In the multicasting database, the database code is the combination of all fields; in the forwarding database, the database code is the combination of all fields except for the output port of the virtual bridge.

[0159] Each item in the virtual bridge database contains the following information:

[0160] (a) Type number input;

[0161] (b) Virtual bridge number;

[0162] (c) Port number;

[0163] (d) Type number output;

[0164] Via the control interface, an external control system may implement the following functions:

[0165] (a) Performing adding, deleting, editing, and querying operations to items in the database;

[0166] (b) Monitoring the working state of the virtual bridge processing unit.

[0167] The virtual bridge device is connected to the data processing and dispatching device via the inter-device interface. The virtual bridge device is connected to the control system of the device via the control interface.

[0168]FIG. 6 (F1) shows a flowchart of the virtual bridge device processing the data entering the inter-device interface in a preferred embodiment of the system for accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention. For data frames entering the device via the inter-device interface, the virtual bridge processing unit performs the following processing steps:

[0169] Step 1: determining whether the data frames are control messages; if yes, going to step 3;

[0170] Step 2: transferring the data frames to an external control system via the control interface unit, and then going to step 17;

[0171] Step 3: extracting the input data type number, destination address, source address, VLAN number, and VMAN number (optional) from a fixed position in the data frames;

[0172] Step 4: searching in the virtual bridge database with the index of the data type number extracted;

[0173] Step 5: determining the searching result; if it is blank, discarding said data frames and going to step 17;

[0174] Step 6: obtaining the virtual bridge number and port number information from the search result;

[0175] Step 7: learning the source address, and then updating the forwarding database according to the learnt result;

[0176] Step 8: determining whether the destination address is a multicasting address; if yes, executing a multicasting sub-flow, and then going to step 17;

[0177] Step 9: determining whether the destination address is a broadcast address, if yes, executing a broadcasting sub-flow, and then going to step 17;

[0178] Step 10: searching in the forwarding database with the index of the virtual bridge number, input port, and destination address, VLAN number, and VMAN number (optional);

[0179] Step 11: examining the search result; if it is blank, executing a broadcasting sub-flow, and then going to step 17;

[0180] Step 12: extracting the output port number from the searching result;

[0181] Step 13: searching in the virtual bridge database with the index of the virtual bridge number and the output port number;

[0182] Step 14: examining the search result; if it is blank, discarding said data frames and going to step 17;

[0183] Step 15: extracting the output type number from the searching result and modifying the data frame, i.e., replacing the type number in the data frames with the output data type number;

[0184] Step 16: outputting the modified data frames via the inter-device interface;

[0185] Step 17: ending the process.

[0186]FIG. 6 (F2) shows a flowchart of broadcasting sub-flow of the virtual bridge device processing data from inter-device interface in a preferred embodiment of the system for accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention. The processing steps of the broadcasting sub-flow are as follows:

[0187] Step 1: searching for the first item corresponding to said virtual bridge in the virtual bridge database with the index of the virtual bridge number;

[0188] Step 2: examining the retrieval result; if it is blank, discarding said data frames and going to step 7;

[0189] Step 3: comparing the input type number in the retrieval result with the type number in the data frames; if they are equal, going to step 6;

[0190] Step 4: copying the data frames, extracting the output type number information from the retrieval result, and then modifying the copied data frames, i.e., replacing the type number in the copied data frames with the output type number;

[0191] Step 5: outputting the modified copied data frames via the inter-device interface;

[0192] Step 6: searching for the next item corresponding to the virtual bridge in the virtual bridge database with the index of the virtual bridge number, then going to step 2;

[0193] Step 7: the sub-flow ending.

[0194]FIG. 6 (F3) shows the flowchart of multicasting sub-flow of virtual bridge device processing data from an inter-device interface in a preferred embodiment of the system of accessing and transmitting Ethernet data frames in a SDH/SONET network according to the present invention. The processing steps of the multicasting sub-flow are as follows:

[0195] Step 1: With the index of a virtual bridge number, input port number, destination address, VLAN number, and VMAN number (optional), searching for the first item corresponding to these key words in the multicasting database;

[0196] Step 2: determining the retrieval result; if it is blank, discarding said data frames and going to step 9;

[0197] Step 3: comparing the output port number in the retrieval result to the extracted input port number (the input port number corresponding to the type number of the data frames in the virtual bridge database); if they are equal, going to step 8;

[0198] Step 4: searching in the virtual bridge database with the index of a virtual bridge number and an output port number;

[0199] Step 5: examining the retrieval result; if it is blank, discarding said data frames and going to step 8;

[0200] Step 6: copying the data frames, extracting the output type number information from the retrieval result, and then modifying the copied data frames, i.e., replacing the type number in the copied data frames with the output type number;

[0201] Step 7: outputting the modified copied data frames via the inter-device interface;

[0202] Step 8: With the index of a virtual bridge number, input port number, destination address, VLAN number, and VMAN number (optional), searching for the next item corresponding to these key words in the multicasting database, then going to step 2;

[0203] Step 9: the sub-flow ending.

[0204]FIG. 7 shows a schematic block diagram of a data processing and dispatching device in a preferred embodiment of the system for accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention. The system comprises a plurality of UNIs designed to couple with the users' networks, a plurality of NNIs designed to couple with said digital transmission network to transmit data, a plurality of mapping/demapping devices 10, a virtual interface device 80 coupled with said UNIs and also coupled with said NNIs via said mapping/demapping devices 10, a data processing and dispatching device 90 coupled with said virtual interface device 80, a plurality of virtual private devices 120 and a virtual bridge device 100 and a RPR device 110 coupled with said data processing and dispatching device. Although a plurality of virtual private devices 120, a virtual bridge device 100 and a RPR device 110 are described in the present invention, it should be noted that a combination of any one or two of them can implement the present invention. The data processing and dispatching device is coupled with a plurality of inter-device interfaces to process the data from said inter-device interfaces. The data processing and dispatching device is also coupled with the processing flow database and the control interface unit. The control interface unit exchanges data with the outside world via the control interface.

[0205] The present invention utilizes the data processing and dispatching device to implement individualized services to improve equipment serviceability. The data processing device stores a plurality of processing flows. The mapping relationship between the processing flows and the data frame types is 1:1. The data processing and dispatching device finds the corresponding processing flow according to the data frame type, and informs other devices to process the data frames according to the processing flow. The processing flows in the data frame processing device may be set up, edited, or deleted dynamically. During the operation of the system, the operator may quickly provide individualized services to maximize the efficacy of the system through adding, editing, and deleting the processing flows in the data processing device.

[0206] The data processing and dispatching device is the processing center of the system, and the processing flows are embedded in it as firmware. There are a plurality of inter-device interfaces in the data processing and dispatching device, each of which maps to a unique external device. The mapping relationship between the inter-device interfaces and the external devices are fixed.

[0207] The processing flow database is the control center of the system, and the items in the database may be updated dynamically. Each processing flow in the processing flow database contains the following information:

[0208] (a) Data frame type number;

[0209] (b) Inter-device interface number

[0210] The data processing and dispatching device is connected to other devices via the inter-device interfaces, each of which maps to a virtual bridge device, a virtual private device, a RPR device, or a virtual interface device. The data processing and dispatching device is connected to the control system of the device via the control interface.

[0211]FIG. 7 (F) shows a flowchart of the data processing and dispatching device processing the data entering the device in a preferred embodiment of the system for accessing and transmitting Ethernet data frames in an SDH/SONET network according to the present invention. The processing steps are as follows:

[0212] Step 1: extracting the type number from the data frames;

[0213] Step 2: searching in the processing flow database with the index of the extracted type number;

[0214] Step 3: examining the searching result; if it is blank, discarding said data frames and going to step 6;

[0215] Step 4: extracting the inter-device interface number from the searching result;

[0216] Step 5: outputting the data frames via the inter-device interface corresponding to the inter-device interface number;

[0217] Step 6: ending the process.

[0218] Application of the system:

[0219] The operator may utilize the system shown in FIG. 4 to provide users with Ethernet services, which correspond to various combinations of processing flows. The operator may define and choose required processing flow combinations flexibly according to network topology, the users' service demands and the bandwidth resource. Processing flow combinations common used are as follows:

[0220] Processing flow combination 1:

[0221] (1) The virtual interface device classifies the data frames;

[0222] (2) The virtual interface device outputs the data frames to corresponding device interfaces.

[0223] Processing flow combination 2:

[0224] (1) The virtual interface device classifies the data frames;

[0225] (2) The virtual bridge device switches the data frames;

[0226] (3) The virtual interface device outputs the data frames to corresponding device interfaces.

[0227] Processing flow combination 3:

[0228] (1) The virtual interface device classifies the data frames;

[0229] (2) The virtual private device processes the data frames (relay, converge, or deconverge);

[0230] (3) The virtual interface device outputs the data frames to corresponding device interfaces.

[0231] Processing flow combination 4:

[0232] (1) The virtual interface device classifies the data frames;

[0233] (2) The RPR device processes the data frames (terminates, relays, or starts data frame transmission);

[0234] (3) The virtual interface device outputs the data frames to corresponding device interfaces.

[0235] Processing flow combination 5:

[0236] (1) The virtual interface device classifies the data frames;

[0237] (2) The virtual bridge device switches the data frames;

[0238] (3) The virtual private device converges the data frames;

[0239] (4) The virtual interface device outputs the data frames to corresponding device interfaces.

[0240] Processing flow combination 6:

[0241] (1) The virtual interface device classifies the data frames;

[0242] (2) The virtual private device deconverges the data frames;

[0243] (3) The virtual bridge device switches the data frames;

[0244] (4) The virtual interface device outputs the data frames to corresponding device interfaces.

[0245] Processing flow combination 7:

[0246] (1) The virtual interface device classifies the data frames;

[0247] (2) The virtual private device deconverges the data frames;

[0248] (3) The virtual bridge device switches the data frames;

[0249] (4) The virtual private device converges the data frames;

[0250] (5) The virtual interface device outputs the data frames to corresponding device interfaces.

[0251] Processing flow combination 8:

[0252] (1) The virtual interface device classifies the data frames;

[0253] (2) The RPR device terminates sending the data frames;

[0254] (3) The virtual bridge device switches the data frames;

[0255] (4) The virtual interface device outputs the data frames to corresponding device interfaces.

[0256] Processing flow combination 9:

[0257] (1) The virtual interface device classifies the data frames;

[0258] (2) The virtual bridge device switches the data frames;

[0259] (3) The RPR device begins to send the data frames;

[0260] (4) The virtual interface device outputs the data frames to corresponding device interfaces.

[0261] Processing flow combination 10:

[0262] (1) The virtual interface device classifies the data frames;

[0263] (2) The RPR device terminates sending the data frames;

[0264] (3) The virtual bridge device switches the data frames;

[0265] (4) The RPR device begins to send the data frames;

[0266] (5) The virtual interface device outputs the data frames to corresponding device interfaces.

[0267] Processing flow combination 11:

[0268] (1) The virtual interface device classifies the data frames;

[0269] (2) The virtual private device converges the data frames;

[0270] (3) The RPR device begins to send the data frames;

[0271] (4) The virtual interface device outputs the data frames to corresponding device interfaces.

[0272] Processing flow combination 12:

[0273] (1) The virtual interface device classifies the data frames;

[0274] (2) The RPR device terminates sending the data frames;

[0275] (3) The virtual private device deconverges the data frames;

[0276] (4) The virtual interface device outputs the data frames to corresponding device interfaces.

[0277] Processing flow combination 13:

[0278] (1) The virtual interface device classifies the data frames;

[0279] (2) The RPR device terminates sending the data frames;

[0280] (3) The virtual private device relays the data frames;

[0281] (4) The RPR device begins to send the data frames;

[0282] (5) The virtual interface device outputs the data frames to corresponding device interfaces.

[0283] Processing flow combination 14:

[0284] (1) The virtual interface device classifies the data frames;

[0285] (2) The RPR device terminates sending the data frames;

[0286] (3) The virtual private device deconverges the data frames;

[0287] (4) The virtual bridge device switches the data frames;

[0288] (5) The virtual interface device outputs the data frames to corresponding device interfaces.

[0289] Processing flow combination 15:

[0290] (1) The virtual interface device classifies the data frames;

[0291] (2) The virtual bridge device switches the data frames;

[0292] (3) The virtual private device converges the data frames;

[0293] (4) The RPR device begins to send the data frames;

[0294] (5) The virtual interface device outputs the data frames to corresponding device interfaces.

[0295] Processing flow combination 16:

[0296] (1) The virtual interface device classifies the data frames;

[0297] (2) The RPR device terminates sending the data frames;

[0298] (3) The virtual private device deconverges the data frames;

[0299] (4) The virtual bridge device switches the data frames;

[0300] (5) The virtual private device converges the data frames;

[0301] (6) The RPR device begins to send the data frames;

[0302] (7) The virtual interface device outputs the data frames to corresponding device interfaces.

[0303] Processing flow combination 17:

[0304] (1) The virtual interface device classifies the data frames;

[0305] (2) The virtual private device deconverges the data frames;

[0306] (3) The RPR device terminates sending the data frames;

[0307] (4) The virtual interface device outputs the data frames to corresponding device interfaces.

[0308] Processing flow combination 18:

[0309] (1) The virtual interface device classifies the data frames;

[0310] (2) The RPR device begins to send the data frames;

[0311] (3) The virtual private device converges the data frames;

[0312] (4) The virtual interface device outputs the data frames to corresponding device interfaces.

[0313] Processing flow combination 19:

[0314] (1) The virtual interface device classifies the data frames;

[0315] (2) The virtual private device deconverges the data frames;

[0316] (3) The RPR device relays the data frames;

[0317] (4) The virtual private device converges the data frames;

[0318] (5) The virtual interface device outputs the data frames to corresponding device interfaces.

[0319] Processing flow combination 20:

[0320] (1) The virtual interface device classifies the data frames;

[0321] (2) The virtual private device deconverges the data frames;

[0322] (3) The RPR device terminates sending the data frames;

[0323] (4) The virtual bridge device switches the data frames;

[0324] (5) The virtual interface device outputs the data frames to corresponding device interfaces.

[0325] Processing flow combination 21:

[0326] (1) The virtual interface device classifies the data frames;

[0327] (2) The virtual bridge device switches the data frames;

[0328] (3) The RPR device begins to send the data frames;

[0329] (4) The virtual private device converges the data frames;

[0330] (5) The virtual interface device outputs the data frames to corresponding device interfaces.

[0331] Processing flow combination 22:

[0332] (1) The virtual interface device classifies the data frames;

[0333] (2) The virtual private device deconverges the data frames;

[0334] (3) The RPR device terminates sending the data frames;

[0335] (4) The virtual bridge device switches the data frames;

[0336] (5) The RPR device begins to send the data frames;

[0337] (6) The virtual private device converges the data frames;

[0338] (7) The virtual interface device outputs the data frames to corresponding device interfaces.

[0339] When implementing functions of the system, the device manufacturers may partially or completely employ the above method. For devices with simple functions, partial components can be omitted and the processing is relatively simple. The device manufacturers may even treat the processing as firmware through fixing connections among the devices to omit the data processing and dispatching device. For instance, for a device that only provides Ethernet private service, it may only comprises the following devices:

[0340] (1) One or more UNIs;

[0341] (2) One or more NNIs and mapping/demapping devices;

[0342] (3) A virtual interface device;

[0343] (4) A virtual private device.

[0344] Said device supports the following processing flow combinations:

[0345] (1) Processing flow combination 1;

[0346] (2) Processing flow combination 3.

[0347] With the system and method of the present invention, integral VLAN services can be provided for users. The system and method in the present invention overcome the restriction on Ethernet data frame address space at UNIs. When a plurality of Ethernet data frames is sent to such a network device, there is no restriction on address space of Ethernet data frames.

[0348] With the system and method of the present invention, a device interface (UNI or NNI) supports both VLAN service and Ethernet private service, and a plurality of Ethernet data frames from many users can be accessed and converged at a single device interface, thus the accessing and converging capability of the device is enhanced greatly.

[0349] With the system and method of the present invention, the operator may maximize processing capacity of its equipments and utilization ratio of bandwidth resource through flexible adjustment to internal processing flows according to network topology, the users' service demands, and bandwidth resource.

[0350] With the system and method of the present invention, individualized services can be quickly provided for users. The operator may provide new services to users through creating new flow combinations, without upgrading or adding new equipment.

[0351] According to the present invention, data frames entering the device via device interfaces are processed after being classified; different data types correspond to different processing flows, which are implemented by virtual interface devices.

[0352] Existing technical schemes and devices have to be implemented on a presumption: data frames from a device interface belong to the same type, and different types of data frames enter the device via different device interfaces. Therefore, in the prior art technical scheme and system, data frames entering the device via the same device interface are processed through the same processing flow, thus the mapping relationship between processing flows and device interfaces is 1:n. As a result, when there are many data types, though the processing capacity of the device is still sufficient enough, some services can't be supported due to lack of free device interfaces.

[0353] Whereas with the system and method of the present invention, data frames from a device interface may contain various types, and processing flows for different types of data frames are different; the mapping relationship between processing flows and device interfaces is m:n.

[0354] In addition, the present invention supports free combination of processing flows; the combination of a data processing and dispatching device and its processing flows is an important part of the present invention.

[0355] Existing technical schemes and devices have no data processing and dispatching device and only support several fixed processing flows. As a result, they lack flexibility and resiliency. However, the requirements of operators for equipment are changing.

[0356] A system lacking flexibility and resiliency is unable to adapt to a changing environment. With the present invention, the operator can update the processing flows dynamically, and users can choose appropriate flow combinations or create new flow combinations as required. There are 22 or more processing flow combinations available.

[0357] In existing technical schemes and devices, the amount of bridge devices is certain; so conflicts among data frame address spaces of different users can be avoided only through restricting the data frame address spaces of users. Whereas the virtual bridge devices in the present invention support dynamical expansion (i.e., add new virtual bridges), and the address space of each virtual bridge is independent; different virtual bridges correspond to different users; hence the present invention has no restriction to data frame address spaces of users.

[0358] In addition, data frames of different users can be isolated, transmitted and shared by adding a label before sending, changing the label during transmission and removing the label at destination address, thus the virtual private device of the present invention is achieved.

[0359] Though the present invention is described with reference to above embodiments, it is understood that any skilled in this field can easily make any change and modification without escaping the spirit of the present invention. So any change and modification should be in the scope of the present invention.

[0360] The foregoing disclosure has been set forth merely to illustrate the invention and is not intended to be limiting. Since modifications of the disclosed embodiments incorporating the spirit and substance of the invention may occur to persons skilled in the art, the invention should be construed to include everything within the scope of the appended claims and equivalents thereof. 

What is claimed is:
 1. A method for processing data through a system for accessing and transmitting different data frames in a digital transmission network, wherein the system includes a user-network interface (UNI), which is used to connect to a user's network, a network-network interface (NNI), which is used to connect to said digital transmission network to transfer data, a mapping/demapping device, a virtual interface device, which couples with the UNI and couples with the NNI via the mapping/demapping device, and a control device, which couples with the virtual interface device to control it to access and transmit the data frames, said method comprising the following steps: the virtual interface device classifying the data frames; and the virtual interface device outputting the data frames to corresponding device interfaces.
 2. A method according to claim 1, wherein said control device includes a data processing and dispatching device, which couples with said virtual interface device; at least one of a virtual private device, a virtual bridge device and a RPR device, which couples with said data processing and dispatching device; said method also comprises the step of the virtual bridge device switching the data frames.
 3. A method according to claim 2, further comprising the step of the virtual private device processing the data frames.
 4. A method according to claim 3, wherein the step of the virtual private device processing the data frames comprises the following step: relaying and/or converging and/or deconverging the data frames.
 5. A method according to claim 2, wherein the step of the virtual private device processing the data frames also comprises the following step: the RPR device processing the data frames.
 6. A method according to claim 5, wherein the step of the RPR device processing the data frames comprises the following step: terminating sending and/or relaying and/or beginning to send the data frames.
 7. A method according to claim 3, wherein the step of the RPR device processing the data frames also comprises the following step: the RPR device processing the data frames.
 8. A method according to claim 7, wherein the step of the RPR device processing the data frames comprises the following step: terminating sending and/or relaying and/or beginning to send the data frames.
 9. A method according to claim 1, wherein said control device includes a data processing and dispatching device, which couples with said virtual interface device; at least one of a virtual private device, a virtual bridge device and a RPR device, which couples with said data processing and dispatching device; said method also comprises the step of the virtual private device processing the data frames.
 10. A method according to claim 9, wherein the step of the virtual private device processing the data frames comprises the following step: relaying and/or converging and/or deconverging the data frames.
 11. A method according to claim 1, wherein the step of the virtual private device processing the data frames also comprises the following step: the RPR device processing the data frames.
 12. A method according to claim 11, wherein the step of the RPR device processing the data frames comprises the following step: terminating sending and/or relaying and/or beginning to send the data frames.
 13. A method according to claim 9, wherein the step of the RPR device processing the data frames also comprises the following step: the RPR device processing the data frames.
 14. A method according to claim 13, wherein the step of the RPR device processing the data frames comprises the following step: terminating sending and/or relaying and/or beginning to send the data frames. 